Enterprises perform many IT changes, e.g., transformation to cloud (IaaS or later PaaS or SaaS—defined below), data center relocation or consolidation, server consolidation, application modernization, refresh, or restructuring necessitated by new enterprise applications. These activities are referred to herein as “migration.” Typically, before even committing to a migration project, an enterprise needs a plan of the required tasks that is sufficiently detailed to estimate a timeline and the required resources.
A migration plan depends on many factors, e.g., current hardware and its configurations, current operating systems and their versions and settings, software, IT management infrastructure, network and storage, dependencies among these components, and criticality of the enterprise applications supported by these IT components. Unfortunately, in today's enterprises, many of these factors are either not tracked reliably or not tracked at all. Therefore, it is possible that, at the early planning stage, only a minority of these factors are known.
Typically, without sufficient data of aforementioned factors, adequate migration plans cannot be made at the planning stage. Hence, migration timelines and costs can only be determined based on very rough estimates such as “migrating×servers/weekend” or “average cost to migrate a Windows server is $X.” This often leads to either underestimates (and thus later cost overruns and deadline misses) or overestimates (and thus to rejection of projects that would in reality have been useful, and in particular to unnecessary deal losses for an IT service provider).